package com.xianggu.reflect.demo;

import java.lang.invoke.MethodHandle;
import java.lang.invoke.MethodHandles;
import java.lang.invoke.MethodType;

public class User {
    public User() {
        System.out.println("用户对象已创建");
    }

    // 构造对象
    public static void main(String[] args) throws Throwable {
        MethodHandles.Lookup lookup = MethodHandles.lookup();
        MethodType mt = MethodType.methodType(void.class);
        
        // 获取构造方法句柄
        MethodHandle constructor = lookup.findConstructor(User.class, mt);
        
        // 创建实例
        User user = (User) constructor.invokeExact(); // 输出：用户对象已创建 
    }
}